package com.javafactroy.kunlong.data.entity;

import lombok.Data;

import com.javafactroy.kunlong.client.feign.dto.PageInfoDto;

import javax.persistence.Column;
import javax.persistence.*;
import java.util.Date;
//import javax.persistence.Id;

import lombok.experimental.Accessors;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.annotations.ApiModel;
import com.alibaba.excel.annotation.write.style.ColumnWidth;

import io.swagger.annotations.ApiModelProperty;

/**
 * @author raymond.lei@163.com
 * @date 2023-11-13 23:03:06
 * @file VDptempApiEntity.java
 * @company farben.sz.com
 */
@Data
@Table(name = "v_dptEmp")
@ApiModel("VIEW")
@Accessors(chain = true)
@ExcelIgnoreUnannotated
@ColumnWidth(18)
public class VDptempApiEntity extends PageInfoDto {

    // 部门名称 dataType:varchar
    @ApiModelProperty(name = "部门名称")
    @ExcelProperty("部门名称")
    @Column(name = "dpt_name")
    String dptName;

    // 编码 dataType:varchar
    @ApiModelProperty(name = "编码")
    @ExcelProperty("编码")
    @Column(name = "dpt_code")
    String dptCode;

    // depPath dataType:varchar
    @ApiModelProperty(name = "")
    @ExcelProperty("depPath")
    @Column(name = "depPath")
    String depPath;

    // 员工编号 dataType:int
    @ApiModelProperty(name = "员工编号")
    @ExcelProperty("员工编号")
    @Column(name = "id")
    @Id
    Integer id;

    // 所属部门 dataType:int
    @ApiModelProperty(name = "所属部门")
    @ExcelProperty("所属部门")
    @Column(name = "departmentId")
    Integer departmentId;

    // 员工姓名 dataType:varchar
    @ApiModelProperty(name = "员工姓名")
    @ExcelProperty("员工姓名")
    @Column(name = "name")
    String name;

    // 性别 dataType:char
    @ApiModelProperty(name = "性别")
    @ExcelProperty("性别")
    @Column(name = "gender")
    String gender;

    // 出生日期 dataType:date
    @ApiModelProperty(name = "出生日期")
    @ExcelProperty("出生日期")
    @Column(name = "birthday")
    Date birthday;

    // 身份证号 dataType:char
    @ApiModelProperty(name = "身份证号")
    @ExcelProperty("身份证号")
    @Column(name = "idCard")
    String idCard;

    // 婚姻状况 dataType:varchar
    @ApiModelProperty(name = "婚姻状况")
    @ExcelProperty("婚姻状况")
    @Column(name = "wedlock")
    String wedlock;

    // 民族 dataType:int
    @ApiModelProperty(name = "民族")
    @ExcelProperty("民族")
    @Column(name = "nationId")
    Integer nationId;

    // 籍贯 dataType:varchar
    @ApiModelProperty(name = "籍贯")
    @ExcelProperty("籍贯")
    @Column(name = "nativePlace")
    String nativePlace;

    // 政治面貌 dataType:int
    @ApiModelProperty(name = "政治面貌")
    @ExcelProperty("政治面貌")
    @Column(name = "politicId")
    Integer politicId;

    // 邮箱 dataType:varchar
    @ApiModelProperty(name = "邮箱")
    @ExcelProperty("邮箱")
    @Column(name = "email")
    String email;

    // 电话号码 dataType:varchar
    @ApiModelProperty(name = "电话号码")
    @ExcelProperty("电话号码")
    @Column(name = "phone")
    String phone;

    // 联系地址 dataType:varchar
    @ApiModelProperty(name = "联系地址")
    @ExcelProperty("联系地址")
    @Column(name = "address")
    String address;

    // 职称ID dataType:int
    @ApiModelProperty(name = "职称ID")
    @ExcelProperty("职称ID")
    @Column(name = "jobLevelId")
    Integer jobLevelId;

    // 职位ID dataType:int
    @ApiModelProperty(name = "职位ID")
    @ExcelProperty("职位ID")
    @Column(name = "posId")
    Integer posId;

    // 聘用形式 dataType:varchar
    @ApiModelProperty(name = "聘用形式")
    @ExcelProperty("聘用形式")
    @Column(name = "engageForm")
    String engageForm;

    // 最高学历 dataType:varchar
    @ApiModelProperty(name = "最高学历")
    @ExcelProperty("最高学历")
    @Column(name = "tiptopDegree")
    String tiptopDegree;

    // 所属专业 dataType:varchar
    @ApiModelProperty(name = "所属专业")
    @ExcelProperty("所属专业")
    @Column(name = "specialty")
    String specialty;

    // 毕业院校 dataType:varchar
    @ApiModelProperty(name = "毕业院校")
    @ExcelProperty("毕业院校")
    @Column(name = "school")
    String school;

    // 入职日期 dataType:date
    @ApiModelProperty(name = "入职日期")
    @ExcelProperty("入职日期")
    @Column(name = "beginDate")
    Date beginDate;

    // 在职状态 dataType:varchar
    @ApiModelProperty(name = "在职状态")
    @ExcelProperty("在职状态")
    @Column(name = "workState")
    String workState;

    // 工号 dataType:varchar
    @ApiModelProperty(name = "工号")
    @ExcelProperty("工号")
    @Column(name = "code")
    String code;

    // 合同期限 dataType:double
    @ApiModelProperty(name = "合同期限")
    @ExcelProperty("合同期限")
    @Column(name = "contractTerm")
    String contractTerm;

    // 转正日期 dataType:date
    @ApiModelProperty(name = "转正日期")
    @ExcelProperty("转正日期")
    @Column(name = "conversionTime")
    Date conversionTime;

    // 离职日期 dataType:date
    @ApiModelProperty(name = "离职日期")
    @ExcelProperty("离职日期")
    @Column(name = "notWorkDate")
    Date notWorkDate;

    // 合同起始日期 dataType:date
    @ApiModelProperty(name = "合同起始日期")
    @ExcelProperty("合同起始日期")
    @Column(name = "beginContract")
    Date beginContract;

    // 合同终止日期 dataType:date
    @ApiModelProperty(name = "合同终止日期")
    @ExcelProperty("合同终止日期")
    @Column(name = "endContract")
    Date endContract;

    // 工龄 dataType:int
    @ApiModelProperty(name = "工龄")
    @ExcelProperty("工龄")
    @Column(name = "workAge")
    Integer workAge;

    // workId dataType:varchar
    @ApiModelProperty(name = "")
    @ExcelProperty("workId")
    @Column(name = "workId")
    String workId;


}